iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 15
0

之前有說到
矩陣可以當作紀錄用的表格

例如當我們想要畫一個黑白的笑臉時
https://ithelp.ithome.com.tw/upload/images/20200929/20130625VAMZwxqp8A.png
我們可以把白的地方紀錄為 0; 黑的地方紀錄為 1

matrix = np.array([[0,0,0,0,0,0,0,0,0,0,0],
                   [0,0,1,1,0,0,0,1,1,0,0],
                   [0,0,1,1,0,0,0,1,1,0,0],
                   [0,0,0,0,0,0,0,0,0,0,0],
                   [0,0,0,0,0,0,0,0,0,0,0],
                   [0,0,1,1,0,0,0,1,1,0,0],
                   [0,0,0,1,1,1,1,1,0,0,0],
                   [0,0,0,0,0,0,0,0,0,0,0]])

然後就可以依照我們想要的畫出圖了

# (row, col) = matrix.shape
if matrix[row][col] == 1:
    rect = patches.Rectangle((col, h-row), 1, 1, facecolor = 'black')
    ax.add_patch(rect)

如果想要畫出其他顏色
https://ithelp.ithome.com.tw/upload/images/20200929/20130625YOUzT9gFwT.png
我們可以利用之前函數的概念去建立一個字典

color_dict = {'0' : 'white',
              '1' : 'black',
              '0.5' : 'red',
              'y' : 'yellow'}

然後再把每個圖形畫出來

for row in range(h):
    for col in range(w):
        rect = patches.Rectangle((col, h-row), 1, 1, facecolor = color_dict[str(matrix[row][col])])
        ax.add_patch(rect)

36:老師你畫的笑臉也太醜了吧

RN:哭呀,我是隨便舉例的
  如果再畫得更精細、顏色配得更好的話
  他其實就是相片了

36:所以相片也跟矩陣有關嗎

RN:現在手機拍的這些影像,其實都把顏色紀錄在矩陣裡唷
  不過之後再說吧,今天吃米糕,要一起去嗎~~


上一篇
[Day 14]老師我學矩陣做什麼(2)
下一篇
[Day 16]老師我學矩陣做什麼(4)
系列文
老師我學這個做什麼:我在工作上看到的數學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言